m=4; %子序列
long=15;%序列长度
X0=zeros(15,4);%差序列矩阵
R0=zeros(15,4);%关联系数矩阵
% 第一步：载入源数据   
a0=[15 18 17 18 19 17 18 18 13 17 18 13 18 13 18];%母序列
a1=[13 18 17 18 17 17 18 17 13 17 18 13 18 13 18];
a2=[18 18 17 17 18 13 17 13 18 13 17 13 13 17 17];
a3=[48.67 43.33 43.56 41.89 39.47 43.44 37.97 41.14 39.67 39.83 34.11 40.58 34.19 30.75 21.22];
a4=[10 10.7 3 5.4 5.4 0.7 4.2 0.5 9.3 0.85 2.9 5.45 4.2 2.7 6];    %子序列
% 第二步：求各序列的初值像
x0=a0./a0(1);
x1=a1./a1(1);
x2=a2./a2(1);
x3=a3./a3(1);
x4=a4./a4(1);
X=[x1',x2',x3',x4'];
% 第三步：求差序列
for i=1:m
for ii=1:long
X0(ii,i)=abs(x0(ii)-X(ii,i));
end
end
% 第四步：求两极差
Max=max(max(X0));  
Min=min(min(X0));
% 第五步：求关联系数
for i=1:m
for ii=1:long
R0(ii,i)=(Min+0.5*Max)/(Min+0.5*Max+X0(ii,i));
end
end
% 第六步：求关联度
r=sum(R0)/long;
% 第七步：显示结果
disp('关联度依次为:')
disp(r)